package cn.yuan.xiaoyu.commonmodule.manager;

import java.util.Map;

import cn.yuan.xiaoyu.XiaoYuApplication;
import cn.yuan.xiaoyu.commonmodule.config.Constant;
import cn.yuan.xiaoyu.commonmodule.utils.L;
import cn.yuan.xiaoyu.commonmodule.utils.SPUtil;

/**
 * Created by yukuo on 2016/4/19.
 * 这是一个用户管理类
 */
public class UserManager {
    /**
     * 清除所有数据
     */
    public static void clearAllInfo() {
        SPUtil.clear(XiaoYuApplication.getInstance());
    }

    /**
     * 获取用户的头像
     *
     * @return 返回的头像
     */
    public static String getUserAvator() {
        return SPUtil.getString(XiaoYuApplication.getInstance(), Constant.AVATOR, "");
    }

    /**
     * 获取用户的手机号
     *
     * @return 返回的手机号
     */
    public static String getUserPhone() {
        return SPUtil.getString(XiaoYuApplication.getInstance(), Constant.USER_PHONE, "");
    }

    /**
     * 获取登录状态
     */
    public static boolean isLogin() {
        return SPUtil.getBoolean(XiaoYuApplication.getInstance(), Constant.ISLOGIN, false);
    }

    /**
     * 设置登录状态
     */
    public static void setIsLogin(boolean islogin) {
        SPUtil.putBoolean(XiaoYuApplication.getInstance(), Constant.ISLOGIN, islogin);
    }

    /**
     * 获取用户ID
     */
    public static String getUserId() {
        return SPUtil.getString(XiaoYuApplication.getInstance(), Constant.USER_ID, "");
    }

    /**
     * 设置用户ID 环信用户名
     */
    public static void setUserId(String userId) {
        SPUtil.putString(XiaoYuApplication.getInstance(), Constant.USER_ID, userId);
    }

    /**
     * 获取自己的邀请码
     *
     * @return
     */
    public static String getSelfInviteCode() {
        return SPUtil.getString(XiaoYuApplication.getInstance(), Constant.SELF_INVITE_CODE, "");
    }

    /**
     * 获取上线的邀请码
     *
     * @return
     */
    public static String getInviteCode() {
        return SPUtil.getString(XiaoYuApplication.getInstance(), Constant.INVITE_CODE, "");
    }

    /**
     * 获取用户名
     *
     * @return
     */
    public static String getNickName() {
        return SPUtil.getString(XiaoYuApplication.getInstance(), Constant.NICKNAME, "");
    }

    /**
     * 获取用户类型
     */
    public static String getUserType() {
        return SPUtil.getString(XiaoYuApplication.getInstance(), Constant.USERTYPE, "");
    }

    /**
     * 打印所有SP信息
     */
    public static void showAll() {
        Map<String, ?> map = SPUtil.getAll(XiaoYuApplication.getInstance());
        for (String key : map.keySet()) {
            L.d("WJ", key + ":" + map.get(key));
        }
    }

    /**
     * 这是一个设置是否是第一次打开app界面
     *
     * @param isFirst
     */
    public static void setIsFirst(boolean isFirst) {
        SPUtil.putBoolean(XiaoYuApplication.getInstance(), Constant.ISFIRST, isFirst);
    }

    /**
     * 这是一个获取是否是第一次打开app界面
     */
    public static boolean isFirst() {
        return SPUtil.getBoolean(XiaoYuApplication.getInstance(), Constant.ISFIRST, false);
    }

}
